home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1989 …il & Dave's Excellent CD / Excellent CD HFS.raw / Moof / Goodies / MPW Goodies / Interfaces / PInterfaces / Serial.p < prev    next >
Encoding:
Text File  |  1988-11-30  |  2.2 KB  |  105 lines  |  [TEXT/MPS ]

  1. {
  2. Created: Tuesday, August 2, 1988 at 10:33 AM
  3.     Serial.p
  4.     Pascal Interface to the Macintosh Libraries
  5.  
  6.     Copyright Apple Computer, Inc.  1985-1988
  7.     All rights reserved
  8. }
  9.  
  10.  
  11. {$IFC UNDEFINED UsingIncludes}
  12. {$SETC UsingIncludes := 0}
  13. {$ENDC}
  14.  
  15. {$IFC NOT UsingIncludes}
  16.     UNIT Serial;
  17.     INTERFACE
  18. {$ENDC}
  19.  
  20. {$IFC UNDEFINED UsingSerial}
  21. {$SETC UsingSerial := 1}
  22.  
  23. {$I+}
  24. {$SETC SerialIncludes := UsingIncludes}
  25. {$SETC UsingIncludes := 1}
  26. {$IFC UNDEFINED UsingTypes}
  27. {$I $$Shell(PInterfaces)Types.p}
  28. {$ENDC}
  29. {$SETC UsingIncludes := SerialIncludes}
  30.  
  31. CONST
  32. baud300 = 380;
  33. baud600 = 189;
  34. baud1200 = 94;
  35. baud1800 = 62;
  36. baud2400 = 46;
  37. baud3600 = 30;
  38. baud4800 = 22;
  39. baud7200 = 14;
  40. baud9600 = 10;
  41. baud19200 = 4;
  42. baud57600 = 0;
  43. stop10 = 16384;
  44. stop15 = -32768;
  45. stop20 = -16384;
  46. noParity = 0;
  47. oddParity = 4096;
  48. evenParity = 12288;
  49. data5 = 0;
  50. data6 = 2048;
  51. data7 = 1024;
  52. data8 = 3072;
  53. ctsEvent = 32;
  54. breakEvent = 128;
  55. xOffWasSent = 128;
  56. dtrNegated = 64;
  57. ainRefNum = -6;     {serial port A input}
  58. aoutRefNum = -7;    {serial port A output}
  59. binRefNum = -8;     {serial port B input}
  60. boutRefNum = -9;    {serial port B output}
  61.  
  62.  
  63. TYPE
  64.  
  65. SPortSel = (sPortA,sPortB);
  66.  
  67. SerShk = PACKED RECORD
  68.     fXOn: Byte;     {XOn flow control enabled flag}
  69.     fCTS: Byte;     {CTS flow control enabled flag}
  70.     xOn: CHAR;      {XOn character}
  71.     xOff: CHAR;     {XOff character}
  72.     errs: Byte;     {errors mask bits}
  73.     evts: Byte;     {event enable mask bits}
  74.     fInX: Byte;     {Input flow control enabled flag}
  75.     fDTR: Byte;     {DTR input flow control flag}
  76.     END;
  77.  
  78. SerStaRec = PACKED RECORD
  79.     cumErrs: Byte;
  80.     xOffSent: Byte;
  81.     rdPend: Byte;
  82.     wrPend: Byte;
  83.     ctsHold: Byte;
  84.     xOffHold: Byte;
  85.     END;
  86.  
  87.  
  88.  
  89. FUNCTION RamSDOpen(whichPort: SPortSel): OSErr;
  90. PROCEDURE RamSDClose(whichPort: SPortSel);
  91. FUNCTION SerReset(refNum: INTEGER;serConfig: INTEGER): OSErr;
  92. FUNCTION SerSetBuf(refNum: INTEGER;serBPtr: Ptr;serBLen: INTEGER): OSErr;
  93. FUNCTION SerHShake(refNum: INTEGER;flags: SerShk): OSErr;
  94. FUNCTION SerSetBrk(refNum: INTEGER): OSErr;
  95. FUNCTION SerClrBrk(refNum: INTEGER): OSErr;
  96. FUNCTION SerGetBuf(refNum: INTEGER;VAR count: LONGINT): OSErr;
  97. FUNCTION SerStatus(refNum: INTEGER;VAR serSta: SerStaRec): OSErr;
  98.  
  99. {$ENDC}    { UsingSerial }
  100.  
  101. {$IFC NOT UsingIncludes}
  102.     END.
  103. {$ENDC}
  104.  
  105.